//
// IUT de Nice / Departement informatique / Module APO Java
// Annee 2011 _ 2012
//
// Classe Manche - Tests unitaires des constructeurs 
//                  (cas nominaux)
//
// Auteur :J.Colin
//
//

public class T_Manche_N1 {

   public static void main (String[] args)throws Throwable {

      Tests.Begin("Manche", "0.0.0");

         Tests.Design("Controle des constructeurs + toString()", 3); {

            Tests.Case("Constructeur par defaut"); {
            Manche m0= new Manche();

               Tests.Unit("\n" + "Equipe prennante durant cette manche : " + "\n" + "Nombre de plis restant : " + 8+ "\n" + "Joueur ayant pris l'atout : " ,  m0.toString());
            }

            Tests.Case("Constructeur normal"); {
            Equipe e1 = new Equipe("nonbeloteurs","Michel","Alain");
            Equipe e2 = new Equipe("beloteurs","Baptiste","Nicolas");
            Joueur j1 = new Joueur(e1,"Michel");
            Joueur j2 = new Joueur(e1,"Alain");
            Joueur j3 = new Joueur(e2,"Nicolas");
            Joueur j4 = new Joueur(e2,"Baptiste");
            Table t1 = new Table(e1, e2);
            Manche m1= new Manche (t1,j1);
            Manche m2= new Manche (t1,j2);
            Manche m3= new Manche (t1,j3);
            Manche m4= new Manche (t1,j4);

               Tests.Unit("\n" + "Equipe prennante durant cette manche : " + "nonbeloteurs" + "\n" + "Nombre de plis restant : " + 8+ "\n" + "Joueur ayant pris l'atout : " + "Michel",    m1.toString());
               Tests.Unit("\n" + "Equipe prennante durant cette manche : " + "nonbeloteurs" + "\n" + "Nombre de plis restant : " + 8+ "\n" + "Joueur ayant pris l'atout : " + "Alain",   m2.toString());
               Tests.Unit("\n" + "Equipe prennante durant cette manche : " + "beloteurs" + "\n" + "Nombre de plis restant : " + 8+ "\n" + "Joueur ayant pris l'atout : " + "Nicolas",  m3.toString());
               Tests.Unit("\n" + "Equipe prennante durant cette manche : " + "beloteurs" + "\n" + "Nombre de plis restant : " + 8+ "\n" + "Joueur ayant pris l'atout : " + "Baptiste",  m4.toString());
            }
         }
         Tests.Design("clone et equals", 3); {
        	 
        	 Equipe e1 = new Equipe("nonbeloteurs","Michel","Alain");
             Equipe e2 = new Equipe("beloteurs","Baptiste","Nicolas");
             Joueur j1 = new Joueur(e1,"Michel");
             Joueur j2 = new Joueur(e1,"Alain");
             Joueur j3 = new Joueur(e2,"Nicolas");
             Joueur j4 = new Joueur(e2,"Baptiste");
             Table t1 = new Table(e1, e2);
             Manche m1= new Manche (t1,j1);
             Manche m2= new Manche (t1,j2);
             Manche m3= new Manche (t1,j3);
             Manche m4= new Manche (t1,j4);
             
             Tests.Case("clone"); {
             Manche m5 = (Manche)m1.clone();
             Manche m6 = (Manche)m2.clone();
             
             Tests.Unit(true, m1.equals(m5));
             Tests.Unit(true, m2.equals(m6));
             Tests.Unit(false, m4.equals(m2));
             Tests.Unit(false, m1.equals(m2));
             }
          }

      Tests.End();       
   }
}
